package javao.cn.work.orc.common.handler;

import javao.cn.work.orc.common.responsTool.Res;
import javao.cn.work.orc.common.responsTool.ResCode;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;
import javao.cn.work.orc.common.exception.OrcException;
import org.springframework.web.multipart.MaxUploadSizeExceededException;

/**
 * 全局异常处理
 */
@RestControllerAdvice
public class OrcExceptionHandler {

    private static final Logger log = LoggerFactory.getLogger(OrcExceptionHandler.class);

    /**
     * 处理全局业务异常
     * @param e
     * @return
     */
    @ExceptionHandler
    public Res handlerOrcServiceException(OrcException e){
        log.debug(e.getMessage());
        return Res.error(e.getCode(),e.getMsg());
    }

    /**
     * 文件大小异常捕获
     * @param e
     * @return
     */
    @ExceptionHandler
    public Res handlerOrcException(MaxUploadSizeExceededException e){
        log.debug("文件上传大小超出：单个文件上传大小超过3MB，多个文件上传总大小不可超过15MB");
        return Res.error("单个文件上传大小超过3MB，多个文件上传总大小不可超过15MB");
    }




}
